Blockchain based reset for new version of an application

ABSTRACT

A method for receiving an app-use contextual data set, applies artificial intelligence style machine logic to the app-use contextual data in order to generate a recommendation that the app should be subject to a recommended revision, in response to the generation of the recommended revision, makes the recommended revision in a dynamic manner, stores the app-use contextual data set in the form of a plurality of blockchain data structures, and operates around contextual reset/roll-back/restore scenarios in a hybrid cloud environment.

BACKGROUND

The present invention relates generally to the field of blockchaintechnology and also to the procedure for resetting an “app.”

The Wikipedia entry for “Blockchain” (as of Feb. 25, 2021) states asfollows: “A blockchain, originally block chain, is a growing list ofrecords, called blocks, that are linked using cryptography. Each blockcontains a cryptographic hash of the previous block, a timestamp, andtransaction data (generally represented as a Merkle tree). By design, ablockchain is resistant to modification of its data. This is becauseonce recorded, the data in any given block cannot be alteredretroactively without alteration of all subsequent blocks. For use as adistributed ledger, a blockchain is typically managed by a peer-to-peernetwork collectively adhering to a protocol for inter-node communicationand validating new blocks. Although blockchain records are notunalterable, blockchains may be considered secure by design andexemplify a distributed computing system with high Byzantine faulttolerance. The blockchain has been described as ‘an open, distributedledger that can record transactions between two parties efficiently andin a verifiable and permanent way’.” (footnote(s) omitted)

The Wikipedia entry for “application software” (as of Feb. 25, 2021)states as follows: “Application software (app for short) is a program orgroup of programs designed for end-users. Examples of an applicationinclude a word processor, a spreadsheet, an accounting application, aweb browser, an email client, a media player, a file viewer, simulators,a console game, or a photo editor. The collective noun applicationsoftware refers to all applications collectively. This contrasts withsystem software, which is mainly involved with running the computer.Applications may be bundled with the computer and its system software orpublished separately and may be coded as proprietary, open-source, orprojects. Apps built for mobile platforms are called mobile apps.Terminology[.] In information technology, an application (app),application program or application software is a computer programdesigned to help people perform an activity. Depending on the activityfor which it was designed, an application can manipulate text, numbers,audio, graphics, and a combination of these elements. Some applicationpackages focus on a single task, such as word processing; others, calledintegrated software include several applications. User-written softwaretailors systems to meet the user's specific needs. User-written softwareincludes spreadsheet templates, word processor macros, scientificsimulations, audio, graphics, and animation scripts. Even email filtersare a kind of user software. Users create this software themselves andoften overlook how important it is. The delineation between systemsoftware such as operating systems and application software is notexact, however, and is occasionally the object of controversy. Forexample, one of the key questions in the United States v. MicrosoftCorp. antitrust trial was whether Microsoft's Internet Explorer webbrowser was part of its Windows operating system or a separable piece ofapplication software. As another example, the GNU/Linux namingcontroversy is, in part, due to disagreement about the relationshipbetween the Linux kernel and the operating systems built over thiskernel. In some types of embedded systems, the application software andthe operating system software may be indistinguishable to the user, asin the case of software used to control a VCR, DVD player, or microwaveoven. The above definitions may exclude some applications that may existon some computers in large organizations.” (footnote(s) omitted)

While the previous paragraph gives an accurate description of many“apps,” for purposes of this document, an “app” is hereby defined as anysoftware program that performs any function on any type of computer,including, but not limited to, the types of apps described in thepreceding paragraph.

As the term is used in this document “go-live” is hereby defined to meanany computer operations and/or processes where: (i) at least a portionof an enterprises data and/or software is migrated from traditionalinternet servers to a cloud (for example, public cloud, private cloud,hybrid cloud); (ii) the data and/or software under migration can beaccessed and/or used in a substantially continuous manner during thetime period of the migration; and/or (iii) “go-live” is the deploymentof a functionality or business feature into a composure environment forbusiness users.

For purposes of this document, “resetting an app” means rolling-back toan older/earlier version of functionality or feature due to developmentfailure of the new release into a computer environment.

SUMMARY

According to an aspect of the present invention, there is a method,computer program product and/or system that performs the followingoperations (not necessarily in the following order): (i) receivingapp-use contextual data set that includes information indicative ofoperations of an app and transactions statuses of an app that has beendeployed and is in use; (ii) applying artificial intelligence stylemachine logic to the app-use contextual data in order to generate arecommendation that the app should be subject to a recommended revision;and (iii) responsive to generation of the recommended revision, makingthe recommended revision, in a dynamic manner.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram view of a first embodiment of a systemaccording to the present invention;

FIG. 2 is a flowchart showing a first embodiment method performed, atleast in part, by the first embodiment system;

FIG. 3 is a block diagram showing a machine logic (for example,software) portion of the first embodiment system; and

FIG. 4 is a screenshot view generated by the first embodiment system.

DETAILED DESCRIPTION

This Detailed Description section is divided into the followingsubsections: (i) The Hardware and Software Environment; (ii) ExampleEmbodiment; (iii) Further Comments and/or Embodiments; and (iv)Definitions.

I. The Hardware and Software Environment

The present invention may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present invention.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (for example, lightpulses passing through a fiber-optic cable), or electrical signalstransmitted through a wire.

A “storage device” is hereby defined to be anything made or adapted tostore computer code in a manner so that the computer code can beaccessed by a computer processor. A storage device typically includes astorage medium, which is the material in, or on, which the data of thecomputer code is stored. A single “storage device” may have: (i)multiple discrete portions that are spaced apart, or distributed (forexample, a set of six solid state storage devices respectively locatedin six laptop computers that collectively store a single computerprogram); and/or (ii) may use multiple storage media (for example, a setof computer code that is partially stored in as magnetic domains in acomputer's non-volatile storage and partially stored in a set ofsemiconductor switches in the computer's volatile memory). The term“storage medium” should be construed to cover situations where multipledifferent types of storage media are used.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

As shown in FIG. 1 , networked computers system 100 is an embodiment ofa hardware and software environment for use with various embodiments ofthe present invention. Networked computers system 100 includes: serversubsystem 102 (sometimes herein referred to, more simply, as subsystem102); client subsystems 104, 106, 108, 110, 112; and communicationnetwork 114. Server subsystem 102 includes: server computer 200;communication unit 202; processor set 204; input/output (I/O) interfaceset 206; memory 208; persistent storage 210; display 212; externaldevice(s) 214; random access memory (RAM) 230; cache 232; program 300;and app-use contextual data set 302.

Subsystem 102 may be a laptop computer, tablet computer, netbookcomputer, personal computer (PC), a desktop computer, a personal digitalassistant (PDA), a smart phone, or any other type of computer (seedefinition of “computer” in Definitions section, below). Program 300 isa collection of machine readable instructions and/or data that is usedto create, manage and control certain software functions that will bediscussed in detail, below, in the Example Embodiment subsection of thisDetailed Description section.

Subsystem 102 is capable of communicating with other computer subsystemsvia communication network 114. Network 114 can be, for example, a localarea network (LAN), a wide area network (WAN) such as the Internet, or acombination of the two, and can include wired, wireless, or fiber opticconnections. In general, network 114 can be any combination ofconnections and protocols that will support communications betweenserver and client subsystems.

Subsystem 102 is shown as a block diagram with many double arrows. Thesedouble arrows (no separate reference numerals) represent acommunications fabric, which provides communications between variouscomponents of subsystem 102. This communications fabric can beimplemented with any architecture designed for passing data and/orcontrol information between processors (such as microprocessors,communications and network processors, etc.), system memory, peripheraldevices, and any other hardware components within a computer system. Forexample, the communications fabric can be implemented, at least in part,with one or more buses.

Memory 208 and persistent storage 210 are computer-readable storagemedia. In general, memory 208 can include any suitable volatile ornon-volatile computer-readable storage media. It is further noted that,now and/or in the near future: (i) external device(s) 214 may be able tosupply, some or all, memory for subsystem 102; and/or (ii) devicesexternal to subsystem 102 may be able to provide memory for subsystem102. Both memory 208 and persistent storage 210: (i) store data in amanner that is less transient than a signal in transit; and (ii) storedata on a tangible medium (such as magnetic or optical domains). In thisembodiment, memory 208 is volatile storage, while persistent storage 210provides nonvolatile storage. The media used by persistent storage 210may also be removable. For example, a removable hard drive may be usedfor persistent storage 210. Other examples include optical and magneticdisks, thumb drives, and smart cards that are inserted into a drive fortransfer onto another computer-readable storage medium that is also partof persistent storage 210.

Communications unit 202 provides for communications with other dataprocessing systems or devices external to subsystem 102. In theseexamples, communications unit 202 includes one or more network interfacecards. Communications unit 202 may provide communications through theuse of either or both physical and wireless communications links. Anysoftware modules discussed herein may be downloaded to a persistentstorage device (such as persistent storage 210) through a communicationsunit (such as communications unit 202).

I/O interface set 206 allows for input and output of data with otherdevices that may be connected locally in data communication with servercomputer 200. For example, I/O interface set 206 provides a connectionto external device set 214. External device set 214 will typicallyinclude devices such as a keyboard, keypad, a touch screen, and/or someother suitable input device. External device set 214 can also includeportable computer-readable storage media such as, for example, thumbdrives, portable optical or magnetic disks, and memory cards. Softwareand data used to practice embodiments of the present invention, forexample, program 300, can be stored on such portable computer-readablestorage media. I/O interface set 206 also connects in data communicationwith display 212. Display 212 is a display device that provides amechanism to display data to a user and may be, for example, a computermonitor or a smart phone display screen.

In this embodiment, program 300 is stored in persistent storage 210 foraccess and/or execution by one or more computer processors of processorset 204, usually through one or more memories of memory 208. It will beunderstood by those of skill in the art that program 300 may be storedin a more highly distributed manner during its run time and/or when itis not running. Program 300 may include both machine readable andperformable instructions and/or substantive data (that is, the type ofdata stored in a database). In this particular embodiment, persistentstorage 210 includes a magnetic hard disk drive. To name some possiblevariations, persistent storage 210 may include a solid state hard drive,a semiconductor storage device, read-only memory (ROM), erasableprogrammable read-only memory (EPROM), flash memory, or any othercomputer-readable storage media that is capable of storing programinstructions or digital information.

The programs described herein are identified based upon the applicationfor which they are implemented in a specific embodiment of theinvention. However, it should be appreciated that any particular programnomenclature herein is used merely for convenience, and thus theinvention should not be limited to use solely in any specificapplication identified and/or implied by such nomenclature.

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

II. Example Embodiment

As shown in FIG. 1 , networked computers system 100 is an environment inwhich an example method according to the present invention can beperformed. As shown in FIG. 2 , flowchart 250 shows an example methodaccording to the present invention. As shown in FIG. 3 , program 300performs or controls performance of at least some of the methodoperations of flowchart 250. This method and associated software willnow be discussed, over the course of the following paragraphs, withextensive reference to the blocks of FIGS. 1, 2 and 3 .

Processing begins at operation S255, where program 300 receives app-usecontextual data set 302 from client sub-system 104. In this example,client sub-system 104 is an app server that serves codes from the appand/or output from running the app (at the server) to various users(represented here by client sub-systems 106, 108, 110 and 112). In thisexample, the app server of client sub-system 104 is part of atraditional client/server internet architecture. Alternatively, the appserver could be located in a cloud and/or in a hybrid cloud. App-usecontextual data set that includes information indicative of operationsof an app and transactions statuses of an app that has been deployed andis in use. As shown in screen shot 400 of FIG. 4 , the app-usecontextual data set includes: (i) data for three operations (in thisexample, three attempted logins respectively by users A, B and C); and(ii) three transaction statuses (in this example, “APP SITE WORKING ASOF T0,” “SITE DOWN,” and “SITE DOWN”). The “what-if” analyzer recommends‘x’ percent of sales impacted due to ‘n’ users impacted which is a datadriven decision for stake holders to make.

This example could be extended for a user to login due to his/herinternet connectivity or firewall issues. The system analysestransaction data across other users or automated jobs and recommends noreset required. Again, the “what-if” analyzer comes into the equationand impacts the data on ‘y’ percent of sales, but only for anintermittent window of connectivity issues. This way, a large set ofusers are still operational and there is no impact to the business.

Processing proceeds to operation S260, where blockchain module (“mod”)304 stores the app-use contextual data set in the form of a plurality ofblockchain data structures. Information stored on the blockchainincludes transaction status which represents workflow execution, withstatus indicators such as approved, on hold, rejected, waiting forthird-party, etc. The status encompasses attributes such as status date,time, description and status audit. The transaction statuses arereal-time (on-the-fly) data generated by the app throughout the day andposted on the blockchain ledger record pertaining to the transactionidentifier. However, there are other data sets which could be batchedonce in few hours, daily, etc. as well. Data stored in the blockchainincludes dynamic data which is stored real-time and when transactionsoccur. Static data (metadata) is stored as part of initial set up of thesystem as a pre-requisite. There is one blockchain per app and perenterprise. Multiple transactions can reside on the same blockchainserver. However, each transaction will create a separate block with aunique identified such as a transaction ID (identifier).

Processing proceeds to operation S265, where artificial intelligence(AI) algorithm 306 applies artificial intelligence style machine logicto the app-use contextual data in order to generate a recommendationthat the app should be subject to a recommended revision. In thisexample, the recommended revision to the app is one of the followingtypes of revision: app reset, app roll-back and/or restore scenarios. Inthis example, and as shown in screen shot 400, in this example, therecommended revision is an app reset because the site is down and areset of the app may fix this problem. Blockchain possessing is shared,secure, distributed, ordered, has write-once characteristics, and isvery efficient to manage and have traceability, visibility of ownership,and related transactions during decision for a reset. This becomes vitalduring deployment failure scenarios when transaction anomalies, due tothe varied nature of transaction states and their stored data structuresoccur. Contextual reset requires data sets to be considered across theenterprise from multiple applications at any point of time for a resetdecision. The traceability should be of the highest quality based onground reality and utmost truth. This true data is harnessed by the AIsystem to leverage the blockchain to assess, predict, and recommend areset solution. It is noted that traditional systems typically havelimitations, such as anomaly transaction data or jeopardized data, thatcould be tampered with or reversed due to the nature of recommendedreset decisions, which will not be accurate and thereby causeundesirable effects.

Processing proceeds to operation S270, where, responsive to generationof the recommended revision, reviser mod 308 makes the recommendedrevision, in a dynamic manner. In this case, dynamic implies acontextual situation handling based on transaction data analysis. Thiscould be based on a set, pre-defined frequency, or by an automaticmethod of machine learned frequency being performed: (i) automatically,upon traversing the data features at a machine learned specified time ormachine learned state, using machine execution of the transaction;and/or (ii) using an explicit request by a user to get therecommendation for the current context and situation.

As discussed in connection with operation S270, and as shown in screenshot 400, the app reset has been made and a diagnostic test associatedwith resetting the app has made sure that the app is working again.

III. Further Comments and/or Embodiments

IT (information technology) teams have commercially available loganalysis frameworks such as operations analytics, third partyproprietary tools, or open source tools. These tools enable the systemto understand transaction type, category, sequence, date time, etc., andleverage any of the NLP (neuro-linguistic programming) techniques basedmachine learning enabling arts to classify transactions, based on logfile entries into feature types such as functional, technical orsecurity.

Some embodiments of the present invention recognize the following facts,potential problems and/or potential areas for improvement with respectto the current state of the art: (i) go-live of a large IT applicationis a major milestone for any business transformation journey; (ii) onceincepted, applications take small little steps and start offeringenhanced features and functionalities, facilitating and enablingmultiple stake holders who are using the application to perform theiractivities more efficiently; (iii) considering the importance ofgo-live, IT and business teams spend a lot of time making things goright in the first place; and/or (iv) during go-live, most teams havechecklists, process maps, tools, and managerial checkpoints, yet thegaps and loopholes bubble up primarily because of inadequate planning,weak governance models, technical limitations, and oversight errors dueto missing finer details, manual mistakes, poor infrastructureallocation, understaffing, etc.

Some embodiments of the present invention recognize the following facts,potential problems and/or potential areas for improvement with respectto the current state of the art: (i) due to varied factors influencing ago-no-go decision attributed to business pressure or financialcommitment to internal or external stake holders, unfavorable decisionsof go-live are done though systems that are not ready yet, which putsthe whole enterprise under jeopardy, and at the mercy of fate, leadingto very high risk with the potential of bankruptcy and/or shutdown;and/or (ii) to salvage the above described situation, most businessesfall back to an option of restore or reset which is arguably based onsome date or cut off window, however this creates a transaction anomalydue to the varied nature of transaction states and their stored datastructures.

Some embodiments of the present invention recognize the following facts,potential problems and/or potential areas for improvement with respectto the current state of the art: (i) leads to a situation when reset is:(a) not required for certain transactions, (b) partially required forselected transactions, and/or (c) needs a complete reversal for sometransactions; (ii) there is no way for IT or business personnel toimplement the need for resets, given that resets are always driven outof a date window with which the financial impact on the business will belarge and compromised; (iii) a go/no-go essentially becomes a binarydecision with no middle path, based on the actual situation being facedduring go-live; and/or (iv) what is needed is a way for businesses torealize new dynamic ways of reset management, unlike traditional ways ofresetting by date ranges.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) uses AI (artificial intelligence) and blockchain type machine logic(for example, software) to recommend dynamic reset, restore, androllback options for an IT application on transaction data; (ii)considers the contextual understanding of transaction states and data;(iii) operates around contextual reset/roll-back/restore scenarios in ahybrid cloud environment; (iv) enables go-live (that is, becomesoperational) for IT applications; and/or (v) includes seamless fitmentof various embodiments with respect to a hybrid cloud strategy for ITscenarios involving movement of applications from on-premises software(from any platform) to cloud migration (to any platform).

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) uses AI and blockchain type machine logic to learn the context ofdata exchange on a live interface in order to classify interface dataelements in a manner that: (a) is based on real usage, (b) recommendsnotation algorithms for enhancing application andinterface-infrastructure performance, and/or (c) applies the generatedrecommendations, including interface-documentation updates; (ii)includes go-live (not necessarily an upgrade) which requires contextualreset/roll-back/restore recommendation strategies in a hybrid cloudenvironment, unlike traditional methods of complete roll-back/reset,which will impact enterprises with a huge monetary impact; and/or (iii)includes roll-back/reset/restore situations which are common andapplicable during any go-live situation of software rollout.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) includes specific details in which some embodiments of the presentinvention determines a method for a blockchain based contextual resetmanager for the replacement/upgrade of an IT application; (ii) includesoperations for having a machine learning based system to recommend thedynamic reset, restore, and roll-back options for an IT application, ontransaction data, which considers the contextual understanding of thetransaction states and data; (iii) includes an operation for: (a)predicting the life cycle of identified transactions enabled with a“what-if” analyzer, and/or (b) determines the transaction end statetowards jeopardy (unexpected as per design) or a happy path (expected asper design), (for example, this aides business stake holders to make theright decisions with confidence and conviction of the derivedrollback/restore/reset strategy); and/or (iv) includes an operation forderiving and enabling a hybrid system (within an enterprisearchitecture) with context-based work/data processing, where the hybridsystem consists of both old and new IT applications.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) is in line with a focus on data, contextual and machine learning,and blockchain; (ii) is aligned with a hybrid cloud strategy for ITscenarios involving movement of applications from on-premises software(or from any platform) to cloud migration (to any platform); (iii)seamlessly provides a big advantage for cloud companies against otherprivate and public cloud providers; (iv) includes a license valueagainst multiple software and service offering providers; (v) can bemodeled as an individual stream of SaaS (software as a service) offeringand revenue recognition channel for multiple products; and/or (vi)includes big potential opportunities for business industries acrossmanufacturing, retail, telecommunication, banking, hospitality,insurance, etc.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) offers huge non-functional value-add for business financials byconsidering how expensive reset, restore and roll-back operations are;(ii) enhances and enables successful go-live for IT applications; (iii)includes a large advantage for IT and business personnel who are in adilemma about a recent decision that was made without knowing therepercussions; and/or (iv) decision making authorities, who are enabledwith a data driven analysis objective, can make decisions withconviction by eliminating any apprehensions, which is a big value-addfor personas and stake holders in the enterprise.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) the algorithm is a boot strap aggregation (normally called baggingor ensemble methodology) technique which combines the predictions frommultiple machine learning algorithms together to make more accuratepredictions than any individual model; (ii) reduces the variance foralgorithms that have high variance; (iii) data features are from a largearray of sources with variety and inter-dependence, changing withrespect to the context of the transaction, (that is, there is a need formultiple models such as classification, linear regression and decisiontrees to be used); and/or (iv) bagging of algorithms is used to achievethe solution.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) the insights generated are wired and painted on a GUI (graphicaluser interface) application for business users to envisage theanalytical data along with the rationale, as recommended by the system;(ii) sample bagging of algorithm usage for the data features includes:(a) a decision tree used to segregate data security buckets such aspublic, private, and confidential, and/or (b) logistic regression isused for classification such as test case “passed” or “failed”; and/or(iii) multi-linear regression is used for predicting one continuousvariable over multiple independent variables, such as transactionpredicted towards jeopardy based on log analysis, error codes andhistorical business audits.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantageswhere the system and method determines the transaction context throughvarious data sources such as, but are not limited to: (i) logs, loganalyzer, heap or thread dumps, memory, CPU (central processing unit)utilization, and network address translators; (ii) error codes duringfailures (for example, error descriptions from a stack trace), (iii)reason codes, notes, and/or instructions used on business documents bypersonnel; (iv) transactions breaching business thresholds andtolerances; (v) application software hardware sizing constraints onmemory, CPU, and/or storage; (vi) long running backend processes whichare extended beyond stipulated time; (vii) concurrent business users atany given time of the business day; (viii) historical behavior ofapplications with respect to specific transactions in the system; and/or(ix) jeopardy management policies enforced by the enterprise.

In addition, the transaction context will be determined by the systemusing the below parameters (sample criteria list): (i) error codesduring failures and error descriptions from the stack trace will belearned by the system, leveraging commercially available naturallanguage classifier software to classify transactions based on log fileentries and for the context derivation; (ii) reason codes, notes, andinstructions used on business documents by personnel will be availableto the system through a business audit engine and this will be realizedthrough commercially available natural language classifier software;(iii) transactions, breaching business thresholds and toleranceshardware sizing constraints will be available to the system throughhealth monitors, memory, CPU utilization, and memory-heap (RAM) tools onany OS (operating system) hosted platform; (iv) application software andhardware sizing constraints on memory, CPU, and storage; (v) longrunning backend processes which are extended beyond stipulated timethrough process profiles generated at an OS level, database explainplans, and session objects; (vi) concurrent business users, at any giventime of the business day, are made available through a number of useractive connections to the system; (vii) historical behavior of theapplication, with respect to a specific transaction in the system, isthe knowledge corpus available for the idea encompassing incidents andtheir respective actions (one or multiple or a combination of actions ispossible); and/or (viii) jeopardy management policies enforced by theenterprise is the knowledge corpus available for encompassing whatjeopardy incidents occurred and was the resolution in-line with businesspolicies. For example, the archival and backup was not being donereal-time by the enterprise. This impacted and put in jeopardy therecovery time objective (RTO) and recovery point objective (RPO)metrics. In context of what was later achieved, both the RPO and RTOmetrics were not well controlled.

In addition, according to some embodiments of the present invention,data sources and availability could be in the form of: (i) structureddatabase reports; (ii) semi-structured spreadsheet files; and/or (iii)unstructured raw data which will be parsed for content by commerciallyavailable software.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) includes a machine learning based system and method to recommend thedynamic reset, restore, and roll-back options, for an IT application ontransaction data, considering the contextual understanding oftransaction states and data; (ii) includes a system and method to: (a)predict the life cycle of identified transactions enabled with a“what-if” analyzer, and/or (b) determine the transaction end statetowards jeopardy (unexpected as per design) or a happy path (expected asper design): (iii) aids business stake holders to make the rightdecision with confidence and conviction of the derivedrollback/restore/reset strategy; and/or (iv) includes a system andmethod to derive and enable a hybrid system (within an enterprisearchitecture) with context based work/data processing, where the hybridsystem consist of both old and new IT applications.

According to embodiments of the present invention, sample data featuresfor leveraging the “what-if” analyzer example described in the two (2)above paragraph will now be further described. This applies (forexample, to 60 retail stores) and includes: (i) a knowledge corpus ofthe individual store's order fulfillment verses the order cancel ratio;(ii) a knowledge corpus of jeopardies that occurred when the store wasnotified about fulfillment of orders that were delayed, cancelled,and/or backordered; (iii) a knowledge corpus of the individual store'sdemography (for example, sales, revenue, margin, footfalls, etc.) forhandling transactions at the point of sale, or by backroom operations,including inbound/outbound inventory management; (iv) metadata ofenterprise customers, enterprise product catalog (departments), andbusiness lines; and/or (v) metadata of individual store's personnelskills, operational capacity in hours (per each day/shift), andlocation, as in metro/non-metro.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) businesses sign up for the service involves metadata, transactiondata, and/or workflow nomenclature from their enterprise applicationsacross multiple IT applications; (ii) the system gets automaticallytriggered based on: (a) traversing data features at a machine learnedspecified time, (b) machine learned state; and/or (c) machine executionof the transaction; (iii) the system gets automatically triggered basedon an explicit request by a user to get the recommendation for thecurrent context and situation; (iv) the system encompasses data frommultiple enterprise applications as part of go-live functionalityincluding: (a) interface details as in XSD's (XML (extensible markuplanguage) schema definitions), (b) interface types such as async, sync,rest, message-oriented middleware, etc., (c) designed data models onindividual applications as a DB (database) object view, (d) test plansand test execution results, (e) production data of the application inconsideration for go-live, (f) data categories such as public, private,classified and confidential, (g) source code business logicinterpretation as in a function point analyzer, (h) state machinetransaction context and designed workflows including task, sub-task,status, urgency or priority, and/or (i) metadata demography (forexample, (1) departments and merchandise they sell, (2) stores and theirregular footfalls, and/or (3) store orders by day, average, peak,customer segments, loyalty, and brand affinity).

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) all the data is diversified; (ii) all the data comes from disparatesources (for example, from several applications including third party,partner applications); (iii) all the data is stored on blockchainledger(s); (iv) the use of blockchain ledger technology entrusts thatthe data integrity trust is at the highest level; (v) leverages machinelearning algorithms to provide a “what-if” analyzer to traverse thedata; (vi) the “what-if” analyzer predicts jeopardy with the transactiondata or, alternatively, a successful path journey flow of transactiondata; (vii) the prediction models are based on a relationship withmigrated data in the current state, along with the future impact onupstream and downstream data exchange; (viii) leverages baggingalgorithms which encompasses multiple machine learning (ML) models; (ix)ML models are combined together for enhanced accuracy; (x) canaccommodate a large varied set of dependent attributes playing a role inpredicted jeopardy or happy path flows; (xi) the insights generated arecommunicated to and displayed by a GUI application; and/or (xii) usesGUI applications, with insights, for business users to envisage theanalytical data, along with rationale as recommended by the system.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) determines affected data; (ii) cleans data; (iii) recommends asystem and method based around identifying roll back data sets in adynamic fashion; (iv) facilitates decision making insights for businessor IT stake-holders about the initial baseline data set, or the modifieddata set, to dynamically determine and recommend the successful journeypaths or jeopardy paths with the current and/or future context oftransactions; (v) considers the contextual understanding of transactionstates and data; (vi) includes a “what-if” analyzer that determines thetransaction end state as being either: (a) susceptible to the danger ofhaving loss of data (for example, unexpected data loss as per design),or (b) a reliable path not likely to cause data loss (for example, dataflows as expected as per design); and/or (vii) aids business stakeholders to make the right decisions with confidence and conviction ofthe derived rollback/restore/reset strategy that may be recommended by acomputer system that is an embodiment of the present invention.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantagesand are consider to be implementation details: (i) the system derivesthe recommendation for rollback workflow by analyzing the transactiondata at an individual entity level (for example, departments, productlines, item categories, cart, sales orders, transfer order, work orders,purchase orders, etc.); (ii) with data points and system predictions,the business and IT leadership make decisions to start accepting livetraffic for new orders (for example, for selected 60 retail stores outof 100 retail stores) which take orders from customers where the storenames are shortlisted and also recommended by the system; (iii) thestakeholders have a hybrid path solution which can keep the businessmoving on all wheels; and/or (iv) all the stores across the fulfillmentnetwork can take orders, however they consume inventory from storeswhich are on the new lightening application.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) transaction status represents workflow execution with a status suchas approved, on hold, rejected, waiting for third-party, etc.; (ii) thestatus encompasses attributes such as status date, time, description,and status audit; (iii) the transaction statuses are real-time“on-the-fly” data generated by the app throughout the day and posted ona blockchain ledger record pertaining to the transaction identifier;and/or (iv) there are other data sets which could be batched once in fewhours, daily, etc. as well.

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) the system encompasses data from multiple enterprise applications aspart of “go-live” functionality; (ii) data is diversified, comes fromdisparate sources, comes from several applications (including thirdparty and partner applications), is stored on blockchain that includes:(a) interface details as in XSDs (XML schema definitions), (b) interfacetypes (for example, async, sync, rest, message-oriented middlewareproducts, etc.), (c) designed data models on individual applications asa DB object view, (d) test plans, (e) test execution results, (f)production data of transactions executed on the application inconsideration for “go-live”, (g) data categories such as public,private, classified, and confidential, (h) source code business logicinterpretation as in function point analyzer, (i) state machinetransaction context and designed workflows including task, sub-task,status, urgency, or priority, and/or (j) metadata demography (forexample, departments and merchandise they sell, stores and their regularfootfalls, store orders on daily/average/peak basis, customer segments,loyalty, and/or business brand affinity); (iii) points (f), (g), (i),and (j) above will generate “on-the-fly” data from the app as operationsare performed where the rest of the points will have one-time data setup at the start; (iv) one blockchain record, with multiple blocks, getadded for every transaction executed on the app and is primarily drivenby points (f) and (i) above; and/or (v) all blocks are linked via aunique transaction identifier (key).

Some embodiments of the present invention may include one, or more, ofthe following operations, features, characteristics and/or advantages:(i) there is one blockchain per app, per enterprise; (ii) transactionstatus is the same as workflow status; and/or (iii) the number ofdifferent apps typically involved in a single workflow instance is verysubjective and is based on: (a) the industry, (b) workflow complexity,(c) the number of enterprise business lines, (d) the operational spanacross geographies; and/or (e) there are ‘n’ number of apps managing aworkflow.

IV. Definitions

Present invention: should not be taken as an absolute indication thatthe subject matter described by the term “present invention” is coveredby either the claims as they are filed, or by the claims that mayeventually issue after patent prosecution; while the term “presentinvention” is used to help the reader to get a general feel for whichdisclosures herein are believed to potentially be new, thisunderstanding, as indicated by use of the term “present invention,” istentative and provisional and subject to change over the course ofpatent prosecution as relevant information is developed and as theclaims are potentially amended.

Embodiment: see definition of “present invention” above—similar cautionsapply to the term “embodiment.”

and/or: inclusive or; for example, A, B “and/or” C means that at leastone of A or B or C is true and applicable.

Including/include/includes: unless otherwise explicitly noted, means“including but not necessarily limited to.”

Module/Sub-Module: any set of hardware, firmware and/or software thatoperatively works to do some kind of function, without regard to whetherthe module is: (i) in a single local proximity; (ii) distributed over awide area; (iii) in a single proximity within a larger piece of softwarecode; (iv) located within a single piece of software code; (v) locatedin a single storage device, memory or medium; (vi) mechanicallyconnected; (vii) electrically connected; and/or (viii) connected in datacommunication.

Computer: any device with significant data processing and/or machinereadable instruction reading capabilities including, but not limited to:desktop computers, mainframe computers, laptop computers,field-programmable gate array (FPGA) based devices, smart phones,personal digital assistants (PDAs), body-mounted or inserted computers,embedded device style computers, application-specific integrated circuit(ASIC) based devices.

What is claimed is:
 1. A computer-implemented method (CIM) comprising:receiving app-use contextual data set that includes informationindicative of operations of an app and transactions statuses of an appthat has been deployed and is in use; applying artificial intelligencemachine logic to the app-use contextual data in order to generate arecommendation that the app is to be rolled back to a previous version,with the application of artificial intelligence machine logic includingperforming ensemble methodology by applying a plurality of machinelearning algorithms to the app-use contextual data set; and responsiveto generation of the recommended revision, rolling back the app to theprevious version; wherein the to the application of the artificialintelligence style machine logic includes: application of at least oneclassification model to the app-use contextual data set; application ofat least one linear regression model to predict a continuous function ofa dependent variable with respect to an independent variable; andapplication of a decision tree to segregate data security categories. 2.The CIM of claim 1 wherein the app-use contextual data set includesinformation indicative of operation of the app from at least thefollowing sources: logs, log analyzer, heap or thread dumps, memory, CPU(central processing unit) utilization.
 3. The CIM of claim 1 wherein theapp-use contextual data set includes information indicative of operationof the app from at least the following sources: error codes and errordescriptions from a stack trace.
 4. The CIM of claim 1 wherein theapp-use contextual data set includes information indicative of operationof the app from at least the following sources: reason codes, notes, andinstructions used on business documents by personnel.
 5. The CIM ofclaim 1 wherein the app-use contextual data set includes informationindicative of operation of the app from at least the following sources:application software hardware sizing constraints on memory, CPU andstorage.
 6. The CIM of claim 1 wherein the app-use contextual data setincludes information indicative of operation of the app from at leastthe following sources: long running backend processes which are extendedbeyond stipulated time, concurrent business users at any given time ofthe business day, historical behavior of applications with respect tospecific transactions in the system, and jeopardy management policiesenforced by the enterprise.